/**
 * 
 */
package projetindus;

import static javax.persistence.TemporalType.DATE;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;

/**
 * Entité Demande
 */
@Entity
@Table(name = "DEMANDE")
public class DemandeEntity implements Serializable {

    /** Attribut serialVersionUID */
    private static final long serialVersionUID = 1L;
    @Column(name = "REFERENCE_DEMANDE", nullable = false)
    @Id
    @GeneratedValue
    private int referenceDemande;
    @Column(name = "TITRE_DEMANDE")
    private String titreDemande;
    @Column(name = "NOM_DEMANDE")
    private String nomDemande;
    @Column(name = "DATE_DEMANDE")
    @Temporal(DATE)
    private Date dateDemande;
    @ManyToOne
    private EtatEntity etatDemande;
    @ManyToOne
    private TypeDemandeEntity typeDemande;
    @ManyToOne
    private PersonneEntity personneDemande;

    /**
     * Constructeur
     */
    public DemandeEntity() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * Accesseur de referenceDemande
     * 
     * @return le referenceDemande
     */
    public int getReferenceDemande() {
        return referenceDemande;
    }

    /**
     * Affectation de referenceDemande
     * 
     * @param referenceDemande referenceDemande à affecter
     */
    public void setReferenceDemande(int referenceDemande) {
        this.referenceDemande = referenceDemande;
    }

    /**
     * Accesseur de titreDemande
     * 
     * @return le titreDemande
     */
    public String getTitreDemande() {
        return titreDemande;
    }

    /**
     * Affectation de titreDemande
     * 
     * @param titreDemande titreDemande à affecter
     */
    public void setTitreDemande(String titreDemande) {
        this.titreDemande = titreDemande;
    }

    /**
     * Accesseur de nomDemande
     * 
     * @return le nomDemande
     */
    public String getNomDemande() {
        return nomDemande;
    }

    /**
     * Affectation de nomDemande
     * 
     * @param nomDemande nomDemande à affecter
     */
    public void setNomDemande(String nomDemande) {
        this.nomDemande = nomDemande;
    }

    /**
     * Accesseur de dateDemande
     * 
     * @return le dateDemande
     */
    public Date getDateDemande() {
        return dateDemande;
    }

    /**
     * Affectation de dateDemande
     * 
     * @param dateDemande dateDemande à affecter
     */
    public void setDateDemande(Date dateDemande) {
        this.dateDemande = dateDemande;
    }

    /**
     * Accesseur de etatDemande
     * 
     * @return le etatDemande
     */
    public EtatEntity getEtatDemande() {
        return etatDemande;
    }

    /**
     * Affectation de etatDemande
     * 
     * @param etatDemande etatDemande à affecter
     */
    public void setEtatDemande(EtatEntity etatDemande) {
        this.etatDemande = etatDemande;
    }

    /**
     * Accesseur de typeDemande
     * 
     * @return le typeDemande
     */
    public TypeDemandeEntity getTypeDemande() {
        return typeDemande;
    }

    /**
     * Affectation de typeDemande
     * 
     * @param typeDemande typeDemande à affecter
     */
    public void setTypeDemande(TypeDemandeEntity typeDemande) {
        this.typeDemande = typeDemande;
    }

    /**
     * Accesseur de personneDemande
     * 
     * @return le personneDemande
     */
    public PersonneEntity getPersonneDemande() {
        return personneDemande;
    }

    /**
     * Affectation de personneDemande
     * 
     * @param personneDemande personneDemande à affecter
     */
    public void setPersonneDemande(PersonneEntity personneDemande) {
        this.personneDemande = personneDemande;
    }

}
